<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Chapter 10. Root Finding &amp; Minimization Algorithms</title>
<link rel="stylesheet" href="math.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="Math Toolkit 4.1.0">
<link rel="up" href="index.html" title="Math Toolkit 4.1.0">
<link rel="prev" href="math_toolkit/tr1_ref.html" title="TR1 C Functions Quick Reference">
<link rel="next" href="math_toolkit/roots_noderiv.html" title="Root Finding Without Derivatives">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="math_toolkit/tr1_ref.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="index.html"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="math_toolkit/roots_noderiv.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="chapter">
<div class="titlepage"><div><div><h1 class="title">
<a name="root_finding"></a>Chapter 10. Root Finding &amp; Minimization Algorithms</h1></div></div></div>
<div class="toc">
<p><b>Table of Contents</b></p>
<dl class="toc">
<dt><span class="section"><a href="math_toolkit/roots_noderiv.html">Root Finding Without Derivatives</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="math_toolkit/roots_noderiv/bisect.html">Bisection</a></span></dt>
<dt><span class="section"><a href="math_toolkit/roots_noderiv/bracket_solve.html">Bracket and
      Solve Root</a></span></dt>
<dt><span class="section"><a href="math_toolkit/roots_noderiv/TOMS748.html">Algorithm TOMS 748:
      Alefeld, Potra and Shi: Enclosing zeros of continuous functions</a></span></dt>
<dt><span class="section"><a href="math_toolkit/roots_noderiv/brent.html">Brent-Decker Algorithm</a></span></dt>
<dt><span class="section"><a href="math_toolkit/roots_noderiv/root_termination.html">Termination
      Condition Functors</a></span></dt>
<dt><span class="section"><a href="math_toolkit/roots_noderiv/implementation.html">Implementation</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="math_toolkit/roots_deriv.html">Root Finding With Derivatives:
    Newton-Raphson, Halley &amp; Schröder</a></span></dt>
<dt><span class="section"><a href="math_toolkit/cubic_roots.html">Roots of Cubic Polynomials</a></span></dt>
<dt><span class="section"><a href="math_toolkit/quartic_roots.html">Roots of Quartic Polynomials</a></span></dt>
<dt><span class="section"><a href="math_toolkit/root_finding_examples.html">Examples of Root-Finding
    (with and without derivatives)</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="math_toolkit/root_finding_examples/cbrt_eg.html">Finding the
      Cubed Root With and Without Derivatives</a></span></dt>
<dt><span class="section"><a href="math_toolkit/root_finding_examples/lambda.html">Using C++11
      Lambda's</a></span></dt>
<dt><span class="section"><a href="math_toolkit/root_finding_examples/5th_root_eg.html">Computing
      the Fifth Root</a></span></dt>
<dt><span class="section"><a href="math_toolkit/root_finding_examples/multiprecision_root.html">Root-finding
      using Boost.Multiprecision</a></span></dt>
<dt><span class="section"><a href="math_toolkit/root_finding_examples/nth_root.html">Generalizing
      to Compute the nth root</a></span></dt>
<dt><span class="section"><a href="math_toolkit/root_finding_examples/elliptic_eg.html">A More
      complex example - Inverting the Elliptic Integrals</a></span></dt>
</dl></dd>
<dt><span class="section"><a href="math_toolkit/bad_guess.html">The Effect of a Poor Initial Guess</a></span></dt>
<dt><span class="section"><a href="math_toolkit/bad_roots.html">Examples Where Root Finding Goes
    Wrong</a></span></dt>
<dt><span class="section"><a href="math_toolkit/brent_minima.html">Locating Function Minima using
    Brent's algorithm</a></span></dt>
<dt><span class="section"><a href="math_toolkit/root_comparison.html">Comparison of Root Finding
    Algorithms</a></span></dt>
<dd><dl>
<dt><span class="section"><a href="math_toolkit/root_comparison/cbrt_comparison.html">Comparison
      of Cube Root Finding Algorithms</a></span></dt>
<dt><span class="section"><a href="math_toolkit/root_comparison/root_n_comparison.html">Comparison
      of Nth-root Finding Algorithms</a></span></dt>
<dt><span class="section"><a href="math_toolkit/root_comparison/elliptic_comparison.html">Comparison
      of Elliptic Integral Root Finding Algorithms</a></span></dt>
</dl></dd>
</dl>
</div>
<p>
    Several tools are provided to aid finding minima and roots of functions.
  </p>
<p>
    Some <a class="link" href="math_toolkit/roots_noderiv.html" title="Root Finding Without Derivatives">root-finding without derivatives</a>
    methods are <a class="link" href="math_toolkit/roots_noderiv/bisect.html" title="Bisection">bisection</a>,
    <a class="link" href="math_toolkit/roots_noderiv/bracket_solve.html" title="Bracket and Solve Root">bracket and solve</a>,
    including use of <a class="link" href="math_toolkit/roots_noderiv/TOMS748.html" title="Algorithm TOMS 748: Alefeld, Potra and Shi: Enclosing zeros of continuous functions">TOMS 748
    algorithm</a>.
  </p>
<p>
    For <a class="link" href="math_toolkit/roots_deriv.html" title="Root Finding With Derivatives: Newton-Raphson, Halley &amp; Schröder">root-finding with derivatives</a>
    the methods of <a class="link" href="math_toolkit/roots_deriv.html#math_toolkit.roots_deriv.newton">Newton-Raphson
    iteration</a>, <a class="link" href="math_toolkit/roots_deriv.html#math_toolkit.roots_deriv.halley">Halley</a>,
    and <a class="link" href="math_toolkit/roots_deriv.html#math_toolkit.roots_deriv.schroder">Schröder</a> are implemented.
  </p>
<p>
    For locating minima of a function, a <a class="link" href="math_toolkit/brent_minima.html#math_toolkit.brent_minima.example">Brent
    minima finding example</a> is provided.
  </p>
<p>
    There are several fully-worked <a class="link" href="math_toolkit/root_finding_examples.html" title="Examples of Root-Finding (with and without derivatives)">root-finding
    examples</a>, including:
  </p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
        <a class="link" href="math_toolkit/root_finding_examples/cbrt_eg.html#math_toolkit.root_finding_examples.cbrt_eg.cbrt_no_derivatives">root-finding
        without derivatives</a>
      </li>
<li class="listitem">
        <a class="link" href="math_toolkit/root_finding_examples/cbrt_eg.html#math_toolkit.root_finding_examples.cbrt_eg.cbrt_1st_derivative">root-finding
        with 1st derivatives</a>
      </li>
<li class="listitem">
        <a class="link" href="math_toolkit/root_finding_examples/cbrt_eg.html#math_toolkit.root_finding_examples.cbrt_eg.cbrt_2_derivatives">root-finding
        with 1st and 2nd derivatives</a>
      </li>
</ul></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2006-2021 Nikhar Agrawal, Anton Bikineev, Matthew Borland,
      Paul A. Bristow, Marco Guazzone, Christopher Kormanyos, Hubert Holin, Bruno
      Lalande, John Maddock, Evan Miller, Jeremy Murphy, Matthew Pulver, Johan Råde,
      Gautam Sewani, Benjamin Sobotta, Nicholas Thompson, Thijs van den Berg, Daryle
      Walker and Xiaogang Zhang<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="math_toolkit/tr1_ref.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="index.html"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="math_toolkit/roots_noderiv.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
